package com.java.interview.thread;

import org.junit.Test;

/**
 * Created by lyc on 2016-03-24.
 */
//现在有T1、T2、T3三个线程，你怎样保证T2在T1执行完后执行，T3在T2执行完后执行？
//这个多线程问题比较简单，可以用join方法实现.
public class InterviewJoin {
    @Test
    public void testInterviewJoin() throws InterruptedException {
        InterviewJoin1 t1 = new InterviewJoin1();
        InterviewJoin2 t2 = new InterviewJoin2();
        t1.setName("线程1");
        t2.setName("线程2");
        t1.start();
        t1.join();//保证T1线程执行完了才执行T2线程
        t2.start();
        t2.join();
//        线程1:98
//        线程1:99
//        线程2:0
//        线程2:1
//        线程2:2
//        线程2:3

    }
}

class InterviewJoin1 extends Thread {
    public void run() {
        for (int i = 0; i < 100; i++) {
            System.out.println(getName() + ":" + i);
        }
    }
}

class InterviewJoin2 extends Thread {
    public void run() {
        for (int i = 0; i < 100; i++) {
            System.out.println(getName() + ":" + i);
        }
    }
}
